<?php

require_once ROOT_DIR.'models/TodoList.php';
require_once ROOT_DIR.'views/TodoListJSON.php';
require_once ROOT_DIR.'controls/RightHelper.php';

/**
 * Tries to retreive the todo list with the given id from the database, generates an overview and echos the resulting view
 * @param int $id
 */
function getListOverview($listID){
	$list = TodoList::getList($listID);
	if(is_null($list)){
		$res = new ResultJSON(true, session_id(), ERROR_LIST_DOES_NOT_EXIST);
		echo $res->renderView();
	} else {
		if($_SESSION['USER_NAME'] == 'admin' || $list->getOwnerID() == $_SESSION['USER_ID'] || RightHelper::sharesList($list)){
			$res = new ResultJSON(false, session_id());
			
			$lastTodo = Todo::getTodos(null, $listID, 0, 1);
			$lastTodo = $lastTodo[0];
			
			$a = array(
				'id' => $listID,
				'tC' => Todo::getTodoCount($listID, null, 'c'),
				'tOS' => Todo::getTodoCount($listID, null, 'oS'),
				'tBS' => Todo::getTodoCount($listID, null, 'bS'),
				'tW' => Todo::getTodoCount($listID, null, 'w'),
				'tN' => Todo::getTodoCount($listID, null, 'n')
			);
			
			if(!is_null($lastTodo)) $a['lTD'] = $lastTodo->getTargetDate();
	
			$res->addItem('lO', $a);
			echo $res->renderView();
		} else {
			$res = new ResultJSON(true, session_id(), ERROR_NOT_ALLOWED);
			echo $res->renderView();
		}
	}
}

?>